<?php

namespace app\api\controller;

use app\common\controller\Api;
use app\common\library\Pay;
use app\common\model\Banner;
use app\common\model\Feedback;
use app\common\model\goods\Goods;
use app\common\model\order\Order;
use app\common\model\Pick;
use app\common\model\User;
use think\Db;

/**
 * 首页接口
 */
class Index extends Api
{
    protected $noNeedLogin = ['*'];
    protected $noNeedRight = ['*'];
    public function test()
    {
        // Pay::orderFulfillment('NO202411041524419207');
        // Pay::orderFulfillment('NO202411071705084734');
        // Pay::orderFulfillment('NO202411072204010747');
        // Pay::orderFulfillment('NO202411081633312412');
    }
    // public function aaa()
    // {
    //     Db::startTrans();
    //     try {
    //         $time = time();
    //         $order = Order::where('order_status', '>', 0)->where('order_class', '<>', 3)->order('id asc')->select();
    //         foreach ($order as $k => $v) {
    //             $user = User::get($v['user_id']);
    //             if (!$user) {
    //                 continue;
    //             }
    //             if ($v['order_class'] == 2) {
    //                 if ($user->num <= 1) {
    //                     $user->num = 0;
    //                 } else {
    //                     $user->setDec('num');
    //                 }
    //                 db('share_log')->insert([
    //                     'user_id' => $user['id'],
    //                     'num' => $user['num'],
    //                     'createtime' => $time,
    //                     'order_id' => $v->id,
    //                     'uid' => $v->user_id,
    //                     'type' => 1,
    //                 ]);
    //             }
    //             $puser = User::get($user['pid']);
    //             if ($puser) {
    //                 if ($puser && $user['first'] == 1) {
    //                     $user->first = 0;
    //                     if ($puser->count >= 2) {
    //                         $puser->num += 1;
    //                         $puser->count = 0;
    //                     } else {
    //                         $puser->count += 1;
    //                     }
    //                     $puser->save();
    //                     db('share_log')->insert([
    //                         'user_id' => $puser->id,
    //                         'num' => $puser->num,
    //                         'createtime' => $time,
    //                         'order_id' => $puser->id,
    //                         'uid' => $user->id,
    //                         'type' => 2
    //                     ]);
    //                 }
    //             }
    //             $user->save();
    //         }

    //         // $user = User::all();
    //         // foreach ($user as $k => $v) {

    //         //     $ids = User::where('pid', $v['id'])->column('id');
    //         //     if ($v['id'] == 2953) {
    //         //         dd(Order::whereIn('user_id', $ids)->where('order_status', '>', 0)->where('order_class', '<>', 3)->order('id asc')->select());
    //         //         foreach ($ids as $key => $vv) {

    //         //             if (!$order) {
    //         //                 continue;
    //         //             }
    //         //             foreach ($order as $key => $vo) {
    //         //                 $u = User::get($vv);
    //         //                 $uu = User::get($v['id']);
    //         //                 if ($vo['order_class'] == 2) {

    //         //                     if ($u->num <= 1) {
    //         //                         $u->num = 0;
    //         //                     } else {
    //         //                         $u->setDec('num');
    //         //                     }

    //         //                     db('share_log')->insert([
    //         //                         'user_id' => $vv,
    //         //                         'num' => $u->num,
    //         //                         'createtime' => $time,
    //         //                         'order_id' => $vo->id,
    //         //                         'uid' => $vo->user_id,
    //         //                         'type' => 1,
    //         //                     ]);
    //         //                 }
    //         //                 if ($vo && $u['first'] == 1) {
    //         //                     $u->first = 0;

    //         //                     if ($uu->count >= 2) {
    //         //                         $uu->num += 1;
    //         //                         $uu->count = 0;
    //         //                     } else {
    //         //                         $uu->count += 1;
    //         //                     }

    //         //                     $uu->save();
    //         //                     db('share_log')->insert([
    //         //                         'user_id' => $uu->id,
    //         //                         'num' => $uu->num,
    //         //                         'createtime' => $time,
    //         //                         'order_id' => $vo->id,
    //         //                         'uid' => $vo->user_id,
    //         //                         'type' => 2
    //         //                     ]);
    //         //                 }
    //         //                 $u->save();
    //         //             }
    //         //         }
    //         //     }
    //         // }
    //         Db::commit();
    //     } catch (\Throwable $e) {
    //         Db::rollback();
    //         dd($e);
    //     }
    //     $this->success();
    // }
    /**
     * 首页
     *
     */
    public function index()
    {
        $banner = Banner::all();
        //体验专区
        $ty_goods = Goods::all(['type' => 2], ['suk']);
        //VIP专区
        $vip_goods = Goods::all(['type' => 4], ['suk']);
        //首页推荐
        $goods = Goods::all(['hot' => 1, 'type' => 1, 'status' => 'normal'], ['suk']);
        $this->success('请求成功', compact('banner', 'ty_goods', 'goods', 'vip_goods'));
    }

    /**
     * @Author LK
     * @date: 2023-12-07 
     * @ApiTitle (自提地址)
     * @ApiMethod (GET)
     * @ApiReturnParams (name="code", type="integer", required=true, description="")
     * @ApiReturn ({'code':1,'msg':'返回成功'})
     */
    public function pick_address()
    {
        $this->success('', Pick::get(1));
    }

    /**
     * @Author LK
     * @date: 2023-12-11 
     * @ApiTitle (常见问题)
     * @ApiMethod (GET)
     * @ApiReturnParams (name="code", type="integer", required=true, description="")
     * @ApiReturn ({'code':1,'msg':'返回成功'})
     */
    public function quest()
    {
        $this->success('', Feedback::paginate(10));
    }

    /**
     * 常见问题详情
     * @Author xy
     * @ApiMethod (POST)
     * @ApiParams (name="id", type="integer", required=true, sample="", description="ID")
     * @ApiReturnParams (name="code", type="integer", required=true, description="")
     * @ApiReturn ({'code':0,'msg':'返回成功'})
     */
    public function questdetail()
    {
        $this->responseMsg(0, Feedback::get($this->request->param('id')));
        // $this->success('', );
    }
}
